import request from "@/utils/request";

// /admin/acl/index/info get

// post /admin/acl/index/login

// post /admin/acl/index/logout
// 限制token，获取用户信息需要的参数
export interface tokenData {
  token: string;
}
// 登录参数
export interface loginPam {
  username: string;
  password: string;
}

//限制获取用户信息需要响应回来的参数
export interface userInfoData {
  routes: string[];
  buttons: string[];
  roles: string[];
  name: string;
  avatar: string;
}
export default {
  // 只有登录需要参数，其他两个值需要限定返回数据得类型
  // 登录 参数是用户信息，响应的数据是token
  userInfoLogin(login: loginPam) {
    return request.post<any, tokenData>("/admin/acl/index/login", login);
  },

  // 获取用户信息 需要的token存放在headers中了
  getUserInfo() {
    return request.get<any, userInfoData>("/admin/acl/index/info");
  },

  // 退出登录 不需要参数，返回的数据也是空的
  userInfoLogout() {
    return request.post<any, null>("/admin/acl/index/logout");
  },
};
